[机器视觉]halcon十二 条码识别、字符识别之二维码识别 您所在的位置:网站首页 new balance里面的二维码 [机器视觉]halcon十二 条码识别、字符识别之二维码识别

[机器视觉]halcon十二 条码识别、字符识别之二维码识别

2024-06-08 20:06| 来源: 网络整理| 查看: 265

[机器视觉]halcon十二 条码识别、字符识别之二维码识别

流程

        获取图像-》创建模型-》条码识别-》清除模型

注意

        halcon默认是读白底黑字的二维码,如果你的码是黑底白字的要反一下。

算子        

        create_data_code_2d_model : 创建模型

        set_data_code_2d_param : 设置相应参数 

        get_data_code_2d_param : 获取相应参数

        query_data_code_2d_params : 查询参数        

        find_data_code_2d : 查找条码

        get_data_code_2d_objects: 获取二维码读取区域

        get_data_code_2d_result : 获取二维码读取内容

        clear_data_code_2d_model : 销毁模型

        write_data_code_2d_model : 保存二维码模板

        read_data_code_2d_model : 读取二维码模板

结果

        

代码         单文件检测 *读取图片 read_image (Image, 'C:/Users/Public/Documents/MVTec/HALCON-17.12-Progress/examples/images/datacode/qrcode/qr_generated.png') *创建模型 create_data_code_2d_model ('QR Code', [], [], DataCodeHandle) *查找条码 find_data_code_2d (Image, SymbolXLDs, DataCodeHandle, [], [], ResultHandles, DecodedDataStrings) *获取二维码读取内容 get_data_code_2d_results (DataCodeHandle, 'all_candidates', 'status', ResultValues) *获取二维码读取区域 get_data_code_2d_objects (DataCodeObjects, DataCodeHandle, 'all_candidates', 'candidate_xld') *销毁模型 clear_data_code_2d_model (DataCodeHandle) 多文件检测 *获取窗口句柄对象 dev_get_window (WindowHandle) *创建模型 这里使用默认参数 create_data_code_2d_model ('QR Code', [], [], DataCodeHandle) *图片文件夹 imageDir := 'C:/Users/Public/Documents/MVTec/HALCON-17.12-Progress/examples/images/datacode/qrcode/' *获取文件列表 list_files (imageDir, ['files','follow_links','recursive'], ImageFiles) *可以用for算子把文件一个一个打开 for Index := 0 to |ImageFiles| - 1 by 1 *从文件集合中获取指定索引的数据 imagePath := ImageFiles[Index] *判断文件是否存在,存在返回true,否则返回false *imagePath 输入参数:要判断的文件路径 *FileExists 输出参数: 输出文件是否存在,存在返回true,否则返回false file_exists (imagePath, FileExists) disp_message (WindowHandle, '图片-路径:'+imagePath, 'window', 12, 12, 'black', 'true') if (FileExists) *读取图片 read_image (Image, imagePath) *查找条码 find_data_code_2d (Image, SymbolXLDs, DataCodeHandle, [], [], ResultHandles, DecodedDataStrings) *获取二维码读取内容 get_data_code_2d_results (DataCodeHandle, 'all_candidates', 'status', ResultValues) *获取二维码读取区域 get_data_code_2d_objects (DataCodeObjects, DataCodeHandle, 'all_candidates', 'candidate_xld') else disp_message (WindowHandle, '图片-不存在->路径:'+imagePath, 'window', 12, 12, 'black', 'true') endif endfor *销毁模型 clear_data_code_2d_model (DataCodeHandle)



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有